home *** CD-ROM | disk | FTP | other *** search
/ The CICA Windows Explosion! / The CICA Windows Explosion! - Disc 1.iso / desktop / winmaze4.zip / ORACLE.H < prev    next >
C/C++ Source or Header  |  1994-02-14  |  1KB  |  38 lines

  1. #ifndef ORACLE_H
  2. #define ORACLE_H
  3.  
  4. //      Each object derived from this class is a random number generator.
  5. // random_number() returns integers uniformly distributed between 0 and
  6. // max_r_n_plus_1-1.
  7.  
  8. class oracle
  9.   {
  10.     protected:
  11.       int  modulus;
  12. //       max_r_n_plus_1-1
  13.  
  14.       long r_n [8];
  15. //       The previous 8 proposed random numbers (some of which may be out
  16. // of range).
  17.  
  18.       long equal_or_larger_prime(int);
  19. //       Returns the first prime number no less than a given number.
  20.  
  21.       int  is_prime(long);
  22. //       Returns TRUE if a number is prime, FALSE otherwise.
  23.  
  24.       long prime;
  25. //      A prime number no less than max_r_n_plus_1.
  26.  
  27.     public:
  28.            oracle(char *seed,int max_r_n_plus_1);
  29. //      A string of up to 8 characters "seeds" the random number generator.
  30. // Random numbers distributed uniformly between 0 and max_r_n_plus_1-1
  31. // will be returned.
  32.  
  33.       int  random_number(void);
  34. //     Return a random number.
  35.   };
  36.  
  37. #endif
  38.